home *** CD-ROM | disk | FTP | other *** search
/ Delphi Magazine Collection 2001 / Delphi Magazine Collection 20001 (2001).iso / DISKS / Issue63 / Docking / DockedControls6U.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  2000-09-15  |  1.7 KB  |  72 lines

  1. unit DockedControls6U;
  2.  
  3. interface
  4.  
  5. uses
  6.   Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  7.   ComCtrls, ToolWin, StdCtrls, ImgList, ExtCtrls, ActnList, Menus;
  8.  
  9. type
  10.   TForm1 = class(TForm)
  11.     ImageList1: TImageList;
  12.     Label1: TLabel;
  13.     Panel1: TPanel;
  14.     Image1: TImage;
  15.     ControlBar1: TControlBar;
  16.     ToolBar1: TToolBar;
  17.     ToolButton6: TToolButton;
  18.     ToolButton7: TToolButton;
  19.     ToolButton8: TToolButton;
  20.     ToolButton9: TToolButton;
  21.     ToolButton10: TToolButton;
  22.     MainMenu1: TMainMenu;
  23.     ActionList1: TActionList;
  24.     actToggleToolbar: TAction;
  25.     Environment1: TMenuItem;
  26.     Toolbarvisible1: TMenuItem;
  27.     btnToggleFloat: TButton;
  28.     procedure FormCreate(Sender: TObject);
  29.     procedure actToggleToolbarExecute(Sender: TObject);
  30.     procedure actToggleToolbarUpdate(Sender: TObject);
  31.     procedure btnToggleFloatClick(Sender: TObject);
  32.   private
  33.     { Private declarations }
  34.   public
  35.     { Public declarations }
  36.   end;
  37.  
  38. var
  39.   Form1: TForm1;
  40.  
  41. implementation
  42.  
  43. {$R *.DFM}
  44.  
  45. procedure TForm1.FormCreate(Sender: TObject);
  46. begin
  47.   Mouse.DragImmediate := False;
  48.   Image1.ManualDock(Panel1);
  49. end;
  50.  
  51. procedure TForm1.actToggleToolbarExecute(Sender: TObject);
  52. begin
  53.   ToolBar1.Visible := not (Sender as TAction).Checked
  54. end;
  55.  
  56. procedure TForm1.actToggleToolbarUpdate(Sender: TObject);
  57. begin
  58.   (Sender as TAction).Checked := ToolBar1.Visible
  59. end;
  60.  
  61. procedure TForm1.btnToggleFloatClick(Sender: TObject);
  62. begin
  63.   if ToolBar1.Floating then
  64.     ToolBar1.ManualDock(ControlBar1)
  65.   else
  66.     //ToolBar1.ManualDock(nil)
  67.     ToolBar1.ManualFloat(
  68.       Rect(Left, Top, Left + ToolBar1.UndockWidth, Top + ToolBar1.UndockHeight))
  69. end;
  70.  
  71. end.
  72.